//package com.example.carrierapp.ui.adapter;
//
//import android.support.annotation.NonNull;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.widget.ImageButton;
//import android.widget.LinearLayout;
//import android.widget.TextView;
//
//import com.example.carrierapp.bean.dispatch.CarFreeBean;
//import com.example.carrierapp.bean.dispatch.SearchDriverBean;
//import com.example.carrierapp.ui.main.dispatch.search.DispatchSearchActivity;
//import com.example.carrierapp.ui.view.recycleview.XRecyclerView;
//import com.example.carrierapp.util.ToastUtils;
//import com.example.lb.fingerdemo.R;
//
//import java.util.ArrayList;
//import java.util.List;
//
//import butterknife.BindView;
//import butterknife.ButterKnife;
//
//public class DispatchSearchAdatpter extends XRecyclerView.Adapter<DispatchSearchAdatpter.ViewHolder> {
//    private List mList = new ArrayList<>();
//    private int mType = DispatchSearchActivity.Companion.getSEARCH_TYPE_CARNUM();
//
//    public DispatchSearchAdatpter(int mSearchType) {
//        mType = mSearchType;
//    }
//
//    @NonNull
//    @Override
//    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
//        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_dispatch_search, parent, false);
//        return new ViewHolder(view);
//    }
//
//    @Override
//    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
//        holder.bindData(mList.get(position), mType);
//    }
//
//    @Override
//    public int getItemCount() {
//        return mList.size();
//    }
//
//    public void addDataNotClear(List list) {
//        if (list != null && list.size() > 0) {
//            mList.addAll(list);
//            notifyDataSetChanged();
//        }
//    }
//
//    public void addData(List list) {
//        if (list != null && list.size() > 0) {
//            mList.clear();
//            mList.addAll(list);
//            notifyDataSetChanged();
//        }
//    }
//
//    public void clear() {
//        mList.clear();
//        notifyDataSetChanged();
//    }
//
//    public class ViewHolder extends XRecyclerView.ViewHolder {
//        @BindView(R.id.tv_search_person_name)
//        TextView mTvName;
//        @BindView(R.id.ll_search_person)
//        LinearLayout mLlPerson;
//        @BindView(R.id.tv_search_person_phone)
//        TextView mTvPhone;
//        @BindView(R.id.tv_search_carnum_name)
//        TextView mTvCarNum;
//        @BindView(R.id.ib_search_no_empty)
//        ImageButton mIbBusy;
//
//        public ViewHolder(View itemView) {
//            super(itemView);
//            ButterKnife.bind(this, itemView);
//        }
//
//        public void bindData(Object obj, int carTypeName) {
//            switch (carTypeName) {
//                case DispatchSearchActivity.Companion.getSEARCH_TYPE_CARNUM():
//                    CarFreeBean bean = (CarFreeBean) obj;
//                    mLlPerson.setVisibility(View.GONE);
//                    mTvCarNum.setVisibility(View.VISIBLE);
//                    mTvCarNum.setText(bean.carNumber);
//                    mTvCarNum.setOnClickListener(v -> {
//                        if (mOnItemClickListener != null) {
//                            mOnItemClickListener.onCarNumClick(bean);
//                        }
//                    });
//                    break;
//                case DispatchSearchActivity.Companion.getSEARCH_TYPE_DRIVER():
//                    SearchDriverBean.SearchDriverInfo info = (SearchDriverBean.SearchDriverInfo) obj;
//                    mLlPerson.setOnClickListener(v -> {
//                        if (info.transportState == 0) {
//                            ToastUtils.showCenterToast(itemView.getContext(), "该司机已经运输，不能继续调度");
//                        } else {
//                            if (mOnItemClickListener != null) {
//                                mOnItemClickListener.onDriverClick(info);
//                            }
//                        }
//                    });
//
//                    mLlPerson.setVisibility(View.VISIBLE);
//                    mTvCarNum.setVisibility(View.GONE);
//                    mTvName.setText(info.driverName);
//                    mTvPhone.setText(info.driverPhone);
//                    mIbBusy.setVisibility(info.transportState == 0 ? View.VISIBLE : View.GONE);
//                    break;
//            }
//        }
//    }
//
//    public interface OnDataClickListener {
//        void onDriverClick(SearchDriverBean.SearchDriverInfo info);
//
//        void onCarNumClick(CarFreeBean bean);
//
//    }
//
//    private OnDataClickListener mOnItemClickListener;
//
//    public void setOnDataClickListener(OnDataClickListener listener) {
//        mOnItemClickListener = listener;
//    }
//
//}
